#pragma once

#include <mutex>

namespace minidb
{
namespace port
{
class CondVar;

class Mutex
{
public:
    Mutex() = default;
    ~Mutex() = default;
    void Lock()
    {
        mu_.lock();
    }

    void UnLock()
    {
        mu_.unlock();
    }

    void AssertHeld()
    {
    }

private:
    friend class CondVar;
    std::mutex mu_;
};

class CondVar
{
};
} // namespace port
} // namespace minidb